import React from 'react';
import ReactDOM from 'react-dom';
import store from './store/index'
import { Provider, connect } from 'react-redux'
import Add from './components/add'
import Show from './components/show'
import Color from './components/color'
// console.log(store.getState()) // getState的执行结果是 reducer返回值
// dispatch(action)的执行会触发 reducer(xxx,action)的执行
// store.subscribe(() => {
//   console.log("数据好像更新了")
// })  // 把传进来的回调函数放到一个事件池当中，当数据更新之后 再去执行事件池中的所有事件

class App extends React.Component {

  render() {
    // let { name, count, add } = this.props;
    return <div className=''>
      {/* <h1>{name}---{count}</h1>
      <button onClick={add}>+</button> */}
      <Show />
      <Add />
      <Color />
    </div>;
  }
}
// 哪个组件想用redux中的数据 哪个组件就是用connect处理
// App = connect((state) => {
//   return {
//     name: state.name,
//     count: state.count
//   }
// }, (dispatch) => {
//   return {
//     add() {
//       dispatch({ type: 'add', qqq: 23 })
//     }
//   }
// })(App)

ReactDOM.render(<Provider store={store}>
  <App />
</Provider>, document.getElementById('root'))